﻿@model MvcApplication2.Models.Form.CategoryForm
@{
    ViewBag.Title = "Category";
}
@using Webdiyer.WebControls.Mvc;
<script type="text/javascript" language="javascript">

    $(document).ready(function () {
        var basePath = '@Url.Content("~/")';
        $("#btn_DoSave").click(function () {
            if (IsEmpty($("#Name").val())) {
                document.getElementById("msg-name").innerHTML = "vui lòng nhập tên danh mục!";
                return;
            }
            if ($("#Id").val() == 0) {
                var url = basePath + 'Category/CheckName?name=' + $("#Name").val();
                $.getJSON(url, null, function (data) {
                    if (data) {
                        alert("Thư mục này đã tồn tại trong hệ thống!");
                        return;
                    }
                    else {
                        document.forms[0].action = basePath + 'Category/SaveCategory';
                        document.forms[0].method = "post";
                        document.forms[0].submit();
                    }
                });
            }
        });
        $("#btn_DoNew").click(function () {
            $("#Id").val(0);
            $("#Name").val("");
            $("#ParentId").val(0);
        });
        $("#btn_DoDelete").click(function () {
            var id = $("#Id").val();
            if (id == 0) {
                alert("Xin vui lòng chọn một danh mục để xóa");
                return;
            }
            var url = basePath + 'Category/Delete?id=' + id
            if (confirm("bạn có chắc muốn xóa danh mục này không!")) {
                $.getJSON(url, null, function (data) {
                    if (data) {
                        alert("Xóa thành công!");
                        return;
                    }
                    else {
                        alert("Quá trình xóa gặp sự cố xin vui lòng kiểm tra lại!")
                    }
                });
            }
        });
    });
function IsEmpty(value) {
    var isEmpty = false;
    if (value.length == 0) {
        isEmpty = true;
    }
    return isEmpty;
}
function Edit(id) {
    var basePath = '@Url.Content("~/")';
    var url = basePath + 'Category/Edit/' + id;
    $.getJSON(url, null, function (data) {
        $("#Id").val(data[0]);
        $("#Name").val(data[1]);
        $("#ParentId").val(data[2]);
    });
}
</script>
@using (Html.BeginForm()) {
    @Html.Hidden("Id",Model.Id)
    <fieldset>
        <legend>Thư mục</legend>
        <table>
        <tr>
        <td colspan="2">
            @Model.Message
        </td>
        </tr>
            <tr>
                <td>
                    Thư Mục Cha:
                </td>
                <td>
                    @Html.DropDownList("ParentId", Model.cboCategoryParent, "---- chọn thư mục cha ------")
                    <div style="color:Red" id="msg-parentid"> </div>
                </td>
            </tr>
            <tr>
                <td>
                    Tên thư mục:
                </td>
                <td>
                    @Html.TextBox("Name", Model.Name)
                     <div style="color:Red" id="msg-name"> </div>
                </td>
            </tr>
        </table>
        <div style="height:30px">
         <input type ="button" id="btn_DoNew" value="Thêm mới" />
            <input type ="button" id="btn_DoSave" value="Lưu/Sửa" />
            <input type ="button" id="btn_DoDelete" value="Xóa" />
        </div>
    </fieldset>
    }
<table style="width:100%">
    <tr>
        <th style ="text-align:center">
            STT
        </th>
        <th>
            Tên thư mục
        </th>
        <th>
        thư mục cha
        </th>
    </tr>
    @{int t = Model.PageNumber * 10;}
    @foreach (var item in Model.categoryPagedList)
    {
        <tr onclick="javascript:Edit(@item.Id);" style="cursor:pointer">
            <td style="text-align:center">
                @t
            </td>
            <td>
                @item.Name
            </td>
            <td>
            @(item.ParentId!=null? @item.Categorykey.Name:"")
            </td>
        </tr>
    t++;
}
</table>
@Html.Pager(Model.categoryPagedList, new PagerOptions { PageIndexParameterName = "id" })
